package com.ruoyi.ihome.domain;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class SearchCriteria {
    private String coordinate;
    private BigDecimal longitude;
    private BigDecimal latitude;
    private String rentValue;
    private Double lowestPrice;
    private Double highestPrice;
    private String sortValue;
    private Integer directionValue;
    private String areaValue;
    private Integer minimumArea;
    private Integer maximumArea;
    private String serchValue;

//    public String getCoordinate() {
//        return coordinate;
//    }
//
    public void setCoordinate(String coordinate) {
        this.coordinate = coordinate;
        if (coordinate != null || !coordinate.equals("")){
            if (coordinate.indexOf(",") != -1){
                String[] co = coordinate.split(",");
                Double longitude = Double.parseDouble(co[0]);
                this.longitude = BigDecimal.valueOf(longitude);
                Double latitude = Double.parseDouble(co[1]);
                this.latitude = BigDecimal.valueOf(latitude);
            }
        }
    }
//
//    public BigDecimal getLongitude() {
//        return longitude;
//    }
//
//    public void setLongitude(BigDecimal longitude) {
//        this.longitude = longitude;
//    }
//
//    public BigDecimal getLatitude() {
//        return latitude;
//    }
//
//    public void setLatitude(BigDecimal latitude) {
//        this.latitude = latitude;
//    }
//
//    public String getRentValue() {
//        return rentValue;
//    }
//
    public void setRentValue(String rentValue) {
        this.rentValue = rentValue;
        if (rentValue != "default" && !rentValue.equals("default")) {
            String[] rent = rentValue.split("-");
            this.lowestPrice = Double.parseDouble(rent[0]);
            this.highestPrice = Double.parseDouble(rent[1]);
        }
    }
//
//    public Integer getLowestPrice() {
//        return lowestPrice;
//    }
//
//    public void setLowestPrice(Integer lowestPrice) {
//        this.lowestPrice = lowestPrice;
//    }
//
//    public Integer getHighestPrice() {
//        return highestPrice;
//    }
//
//    public void setHighestPrice(Integer highestPrice) {
//        this.highestPrice = highestPrice;
//    }
//
//    public String getSortValue() {
//        return sortValue;
//    }
//
//    public void setSortValue(String sortValue) {
//        if (sortValue != "default" | !sortValue.equals("default")) {
//            this.sortValue = sortValue;
//        }
//    }
//
//    public Integer getDirectionValue() {
//        return directionValue;
//    }
//
//    public void setDirectionValue(Integer directionValue) {
//        this.directionValue = directionValue;
//    }
//
//    public String getAreaValue() {
//        return areaValue;
//    }
//
    public void setAreaValue(String areaValue) {
        this.areaValue = areaValue;
        if (areaValue != null && !areaValue.equals("")){
            String[] area = areaValue.split("-");
            this.minimumArea = Integer.parseInt(area[0]);
            this.maximumArea = Integer.parseInt(area[1]);
        }
    }
//
//    public Integer getMinimumArea() {
//        return minimumArea;
//    }
//
//    public void setMinimumArea(Integer minimumArea) {
//        this.minimumArea = minimumArea;
//    }
//
//    public Integer getMaximumArea() {
//        return maximumArea;
//    }
//
//    public void setMaximumArea(Integer maximumArea) {
//        this.maximumArea = maximumArea;
//    }
//
//    public String getSerchValue() {
//        return serchValue;
//    }
//
//    public void setSerchValue(String serchValue) {
//        this.serchValue = serchValue;
//    }
//
//    public SearchCriteria(String coordinate, String rentValue, String sortValue, Integer directionValue, String areaValue, String serchValue) {
//        this.coordinate = coordinate;
//        if (coordinate != null || !coordinate.equals("")) {
//            String[] co = coordinate.split(",");
//            Double longitude = Double.parseDouble(co[0]);
//            this.longitude = BigDecimal.valueOf(longitude);
//            Double latitude = Double.parseDouble(co[1]);
//            this.latitude = BigDecimal.valueOf(latitude);
//        }
//        this.rentValue = rentValue;
//        if (rentValue != "default" | !rentValue.equals("default")) {
//            String[] rent = rentValue.split("-");
//            this.lowestPrice = Integer.parseInt(rent[0]);
//            this.highestPrice = Integer.parseInt(rent[1]);
//        }
//        if (sortValue != "default" | !sortValue.equals("default")) {
//            this.sortValue = sortValue;
//        }
//
//        this.directionValue = directionValue;
//
//        this.areaValue = areaValue;
//        if (areaValue != null || !areaValue.equals("")) {
//            String[] area = areaValue.split("-");
//            this.minimumArea = Integer.parseInt(area[0]);
//            this.maximumArea = Integer.parseInt(area[1]);
//        }
//        this.serchValue = serchValue;
//        ;
//    }
}
